package APPyanghuanyu;

import java.lang.reflect.Field;
import java.lang.reflect.Method;

public class AppRelField {
    public static void main(String[] args) throws Exception {
        //加载类对象
        Class<?> C = Class.forName("APPyanghuanyu.Human");
        //o是Human类的实例
        Object o = C.newInstance();
        //    name是                 Human类中的name字段
        Field name = C.getDeclaredField("name");
        //使用字段对象的setAccessible 方法使得私有字段允许被访问
        name.setAccessible(true);
        //set 方法的第一个参数是：调用对象，也就是类的实例
        //set 方法的第二个参数是：具体的值
        name.set(o, "Yhy");
        //通过反射来获取name 属性的值
        Method getName = C.getMethod("getName");
        Object result = getName.invoke(o);
        System.out.println(result);
    }
}
